Performance of mathematical functions in computer hardware, such as microprocessors, may rely on the use of look-up tables (LUTs) stored in some location, such as cache or main memory. Single instruction multiple data (SIMD) instructions may perform multiple memory operations to access LUTs when performing mathematical functions, in hardware. For example, a SIMD instruction that performs a function based on a number of input operands may access a LUT for each one of the input operands in order to obtain a result output to the SIMD function. Because some processor architectures don't provide parallel accesses to a number of LUTs, but rather use the same memory access logic to access one or more LUTs, these LUT accesses may occur in series, instead of a parallel fashion, thereby limiting the performance of performing the SIMD function.
Mathematical functions may be evaluated in some algorithms using splines or other polynomial-based techniques. In some prior art examples, spline functions used to evaluate mathematical functions require multiple software operations to perform things, like range detection, coefficient matching, and polynomial calculations. Use of splines to evalue mathematical functions, can therefore, be computationally intensive and relatively low in performance, thus limiting the usefulness of splines calculations in computer programs.